home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / f83218.arc / F83TUTOR.BLK < prev    next >
Text File  |  1986-08-16  |  18KB  |  1 lines

  1.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  WELCOME TO FORTHTUT                                                                                               Brought to you by Larry Clayton with grateful acknowledge-      ment to Laxen and Perry, creators and donors of F83, of which   forthtut is a small, introductory application.                                                                                        Here you can taste the full flavor of Forth. If you        enjoy it and want to look into FORTH more deeply,               open up F83 on this ECCO disk.                                                                                                      If you want to spend money, you can buy a FORTH that        is almost as good.                                                                                                                 When you're ready to proceed, tell your computer             "n L" and hit the return key.                                                                                                                  Screen Control                                                                                                   Say "1 LIST" to see the first screen.                           Say "L" to see the same screen again.                           Say "1 10 INDEX" for the first line of first 10 screens.                                                                        Say "N L" to see the next screen.                               Say "B L" to see the last screen.                               Remember this:  If you get in a panic and lose your way, say    "1 list" and you'll start over at the beginning.                Say 0 p-in and then "L" to get a a printout of this or any      screen.                                                         Say 0 p-in again to toggle the printer off.                                                                                                                                                                                                                 (              3rd Grade Arithmetic                              THE STACK IS (ALMOST) EVERYTHING.  YOU PUT A NUMBER ON         THE STACK WITH THE KEYBOARD, AND YOU TAKE IT OFF WITH A ".". IF YOU SAY "2 . ", THE COMPUTER WILL ANSWER "2".  THE "2" WENT     ON THE STACK AND CAME FROM IT.                                  ".s" will show you what's on the stack without taking it off.      IF YOU SAY "2 2 + . ", THE COMPUTER WILL SAY "4". AND THE      STACK IS EMPTY.                                                IF YOU SAY "10 2 / . :, THE COMPUTER WILL SAY "5".              IF YOU SAY "10 2 * . ", THE COMPUTER WILL SAY "20".              IF YOU WANT MORE MATH, YOU DON'T NEED A TUTOR, YOU NEED A     TEXTBOOK.                                                                                                                                                                                                                                                                                                                       (       Use a Space Between each Word!!!                             You make up your Forth in the same way you might have      BASIC if you had been the inventor.                                 Here are some of the first words in my Forth, made up from  more basic words of the Forth inventor:                 )       : CLAYTON ." FORTH IS BEAUTIFUL   (L <CR> WILL GET YOU BACK)" ; : 2NDWORD DARK cr cr cr cr cr 20 SPACES CLAYTON ;               : 3RDWORD 2NDWORD 4 TIMES ;    (  Now say "4 LOAD"                 To see how Forth works say "3RDWORD <CR>" and watch          it flash.  Here are the primitive words which I used to make up my words: ":" ";" These two words form the beginning and the endof every word which you can compile.  They tell the computer    that you're making up a word.                                   DARK tells the computer to clear the screen. ."         " tells the computer to display the enclosed string.  Don't forget the  space after the word [."].  Now make up your own words!!!    )  (          SAVING WORDS                                           IF YOU WANT TO KEEP YOUR NEW WORDS FOR TOMORROW, YOU SAVE THEMwith Editor. Pick an empty screen, such as 17. Say "17 EDIT".   Now say "P" and type in what you want on 0 line.  It'll overwritwhatever might already be there.  Now say "n T", such as "1 T", then "P" and put in your next item, perhaps something like      )                 : NEWWORD ." This is easy." ;                 (     Go ahead "T" and "P" your way down the page: lines 0 to 15You can go back and correct any typos with the same two commands       If you want to start over, say "WIPE".  When you have it right, say "DONE".  The disk drive should light up; it's saved.                                                                 One last word: if you want the words on your screen to execute  you have to say "17 LOAD" first; then you can call them and theywork.                                                            To delete a word (and everything after) say FORGET <word>.                        Screen to Screen                                                                                                   Shuffling screens is a good trick--and simple.  Also dan- gerous.  If you said "10 6 COPY", you would find this screen    replaced.  Don't do it unless you have a backup.                     If you should want this screen at a different location,    such as at 15, say "6 15 COPY";you'll find it at both places.   By now you should know two ways to erase either one of them.                                                                          "File to File" is almost as simple.  Suppose you want to  copy a screen from this file to MYFILE.BLK.  First you say      "20 create-file myfile.blk".  Then you say "open myfile.blk".    Then you say "from d.blk" and finally you say                  "n1 n2" COPY".  Screen n1 of the FROM file shows up at Screen n2of the other file.  Beautiful.                                          Go ahead; you can do it.                                (                   Disk to Disk                      cla            This is even simpler.  Put one of your files on a disk on  Drive B.  Now start FORTH like you always do on Drive A.  Now   say "OPEN YOURFILE.XXX".  Oops, it won't work.                  First you have to say "B:". Now say "OPEN YOURFILE.XXX"         and you should be in business.                                      How to get back?  Just say "A:".  That's the whole          ball game.  With this command and what you learned yesterday youcan transfer a Screen from Disk A to Disk B. First open your re-ceiving file; then say "from" and name the drive and file.         For example "from a:d.blk".  Then pronounce the magic words.                                                                                                                                                                                                                                                                                                                                                       Memory Map                      7NOV84CLAY    This screen will help you get an idea of where things are.  BOOT of course is at the bottom of memory.  Next come the core  words.  Say " ' FORTH . "  That's where the dictionary starts.  Now say " ' EMPTY . " (or whatever your last word is).  That's  where the FENCE is.  You can't forget past that point.               You can locate the address in memory of any word, includingyour own words.  You can FORGET your words (See Lesson on Words)                                                                     There are quite a few things above the dictionary.  Here weonly look at the screen buffers.  First say "#BUFFERS ."  That'show many we have.  (When you become expert you can have more or less.)  Now say " FIRST ." That's where the buffers start.  Now say "LIMIT ." That's where they end.  The user area is just     below the buffer area.         All this becomes more important  as you GO FORTH.        You're learning.                        (               To Stop the Action                                                                                                 Suppose you have a screen of instructions for the user, and  you want to hold the screen until he's ready to proceed.  Here'sa way to do it. (These words may be loaded from this screen)    : STARTER DARK ." Put the second part of your program here." ;  : KEYTOGO KEY ;                                                 : WAITER ." TO CONTINUE PRESS A KEY" KEYTOGO STARTER ;          ( Call your next sequence "STARTER".                            (Now write your screen and on line 15 put "WAITER". Be sure to  load this screen and that one and you're home free.                                                                                  If you want to wake him up put "BEEP" before "KEYTOGO".                                                                                                                                                                                                    (                REITERATION                          CLA          For a thrill say "10 LOAD" right now!!                                This screen has 3 things:                               1. Comments         --in parens like this one                   2. Word definitions ---between ": " and " ;"                    3. A word or program named OHWOW. It runs when you say 10 LOAD): PREAMBLE DARK ." THIS COMPUTER IS SO SMART IT CAN COUNT TO 10. DO YOU WANT TO SEE IT?  PRESS Y.  " ;                          : GOAHEAD BEGIN KEY 89 = UNTIL ; ( 89 is ASCII for CAPITAL Y)   : FIRSTLINE CR ." HERE'S THE FIRST NUMBER " 2 SPACES 1 . ;      : MYLOOP 11 2 DO CR ." HERE'S THE NEXT NUMBER " 2 SPACES        I . LOOP ; ( MYLOOP executes everything between DO  and LOOP    from time 2 through time 10.  I of course is the counter.)      : TAIL 10 SPACES ." I'm sure you know enough to press L now." ; : OH-WOW PREAMBLE GOAHEAD FIRSTLINE MYLOOP TAIL ;               OH-WOW     ( You can make up a loop of your own.    )           (              Create your own file                   7NOV84CLAY   You're ready now to develop your own Forth system.           Pick a name and put it with these magic words:                      "10 CREATE-FILE MYFILE.BLK"                                      You now have a file called MYFILE.BLK of 10 KB.              Your file has 10 empty screens to hold your words.                  Using the Screen to Screen, File to File techniques        which you have already learned you can put any existing        screens that you want into your file. Or you can say "n EDIT"   and define any words or write any programs you want to.               You're on your way to being an inventor like the rest     of us.  Good luck.                                              )                                                                                                                                                                                                                                                               (                 WORDS, WORDS, WORDS, WORDS                       For a real sensation say "WORDS".  You can stop it at any    point by pressing a key.  Every word is a program, most of them made up of other more basic words.  You can see how they're madeby saying "SEE WORD".  It won't mean much to you now, but       it will in a few days.  Any words you make up will be added to  the dictionary. They are put in the beginning.  If you get tiredof them, say "FORGET MYWORD".  The machine will delete every    word up to and including MYWORD.                                   There are several vocabularies. For example when you're in   the Editor and say "WORDS", you get an entirely different list.  If you say "VOCS", you'll get a list of the vocabularies.      If you say "ORDER", you'll get the Context and Current vocabula-ries.  If you want to know what that means, check your textbook.    If you spend a few days with these screens, you'll be       ready to get the most out of F83.  You can do it!!  )           (        F83 Versions 1 and 2 [ the CP/M programs.]                  Version 1 appears on N.Jer.Sig Vol 154.                         Version 2 appears on N. Jer.Sig Vol 204.                   Version 1 has the commands "0 SET-DRIVE" and "1 SET-DRIVE".     Version 2 uses "A:" and "B:".                                   Version 1 may require words to be in caps.                      Version 2 doesn't care.                                                                                                             You should be able to get either one for about $6.  Or        download it free from a RCPM.                                                                                                    If all else fails, call me at 703 534 3137, and I'll help      you get a copy.       DON'T CALL COLLECT!!                                                                                             YOU CAN GO FORTH.  )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( the good old printer)                                          Here's something worth knowing:                                   Say "0 p-in l".                                               Better yet say "0 0 p-in l p-in l."                              It toggles.                                                    To print the whole thing say "0 p-in 0 list" and then          "n l 15 times" . )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ( Boot)                                                         open d.blk                                                             : howdie dark 20 spaces ." FORTHTUT -- written by Larry Clayton" cr                                                      10 spaces ." in the public domain Forth system of Laxen and Perry" cr cr 20 spaces ." for ECCO and the PUBLIC DOMAIN"                                                        cr cr cr 10 spaces ." May be freely copied but not sold for profit."  cr cr cr cr ." Neither the author nor distributor has any responsibility for"  ."  financial loss    resulting from the use or abuse of this program." cr cr cr cr 20 spaces ." Hit a key when ready."         EMPTY-BUFFERS   ONLY FORTH ALSO DEFINITIONS   DEFAULT            key dark d.blk 1 list    ;                                  ' howdie IS BOOT                                                                                                                                                                                                                                                 : newword ." this is easy." ;